home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / Interfaces&Libraries / Universal / Interfaces / AIncludes / OCEStandardDirectory.a < prev    next >
Encoding:
Text File  |  1998-08-17  |  26.5 KB  |  958 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        OCEStandardDirectory.a
  3. ;
  4. ;    Contains:    Apple Open Collaboration Environment Standard Directory Interfaces.
  5. ;
  6. ;    Version:    Technology:    AOCE Toolbox 1.02
  7. ;                Release:    Universal Interfaces 3.2
  8. ;
  9. ;    Copyright:    © 1994-1998 by Apple Computer, Inc., all rights reserved.
  10. ;
  11. ;    Bugs?:        For bug reports, consult the following page on
  12. ;                the World Wide Web:
  13. ;
  14. ;                    http://developer.apple.com/bugreporter/
  15. ;
  16. ;
  17.     IF &TYPE('__OCESTANDARDDIRECTORY__') = 'UNDEFINED' THEN
  18. __OCESTANDARDDIRECTORY__ SET 1
  19.  
  20.     IF &TYPE('__ICONS__') = 'UNDEFINED' THEN
  21.     include 'Icons.a'
  22.     ENDIF
  23.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  24.     include 'MacTypes.a'
  25.     ENDIF
  26.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  27.     include 'Quickdraw.a'
  28.     ENDIF
  29.  
  30.     IF &TYPE('__OCE__') = 'UNDEFINED' THEN
  31.     include 'OCE.a'
  32.     ENDIF
  33.     IF &TYPE('__OCEAUTHDIR__') = 'UNDEFINED' THEN
  34.     include 'OCEAuthDir.a'
  35.     ENDIF
  36.  
  37.  
  38. ;  generic icon suites 
  39.  
  40. genericDirectoryIconResource    EQU        -16721                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  41. genericLockedDirectoryIconResource EQU    -16716                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  42. genericRecordIconResource        EQU        -16722                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  43. genericAttributeIconResource    EQU        -16723                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  44. genericTemplateIconResource        EQU        -16746                ; icl8, icl4, ICN#, ics#, ics4, ics8 
  45.  
  46. ;  standard icon suites 
  47.  
  48. directoryFolderIconResource        EQU        -16720                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  49. lockedDirectoryFolderIconResource EQU    -16719                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  50. personalDirectoryIconResource    EQU        -16718                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  51. directoriesIconResource            EQU        -16717                ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  52. preferredPersonalDirectoryIconResource EQU -16724            ; icl8, icl4, ICN#, ics#, ics4, ics8, sicn  
  53. ;  icon IDs for spinning arrows 
  54.  
  55. kFirstSpinnerIcon                EQU        -16745
  56. kLastSpinnerIcon                EQU        -16738
  57. ;  resource types 
  58.  
  59. kSDPPanelResourceType            EQU        'panl'
  60. kSDPFindPanelResourceType        EQU        'find'
  61. ;  Standard FindPanel resource 
  62.  
  63. kStandardFindLayout                EQU        -16700
  64. ;  Prompt For Identity structures 
  65.  
  66. kSDPGuestBit                    EQU        0
  67. kSDPSpecificIdentityBit            EQU        1
  68. kSDPLocalIdentityBit            EQU        2
  69. ;  Values of SDPIdentityKind 
  70.  
  71. kSDPGuestMask                    EQU        $01
  72. kSDPSpecificIdentityMask        EQU        $02
  73. kSDPLocalIdentityMask            EQU        $04
  74. ; typedef unsigned short                 SDPIdentityKind
  75.  
  76.  
  77. kSDPSuggestionOnly                EQU        0
  78. kSDPRestrictToDirectory            EQU        1
  79. kSDPRestrictToRecord            EQU        2
  80. ; typedef unsigned short                 SDPLoginFilterKind
  81.  
  82.  
  83.  
  84. ;  Panel Structures 
  85. ;While the panel is in operation, four selection states may exist.
  86. ;    1) kSDPNothingSelected means nothing is selected.
  87. ;    2) kContainSelected means a volume, folder, catalog, dnode, or PAB is selected.
  88. ;    3) kSDPLockedContainerSelected means one of the above, but no access privledges.
  89. ;    4) kSDPRecordSelected means that a record is currently selected.
  90. ;
  91.  
  92. ;  Values of SDPSelectionState 
  93.  
  94. kSDPNothingSelected                EQU        0
  95. kSDPLockedContainerSelected        EQU        1
  96. kSDPContainerSelected            EQU        2
  97. kSDPRecordSelected                EQU        3
  98. kSDPRecordAliasSelected            EQU        4
  99. kSDPContainerAliasSelected        EQU        5
  100. ; typedef unsigned short                 SDPSelectionState
  101.  
  102.  
  103.  
  104. ;This type informs the caller of the action the user took, either as the result
  105. ;of an event (as returned by SDPPanelEvent) or when SDPOpenSelectedItem is called.
  106. ;
  107. ;kSDPProcessed means that the event (or call to SDPOpenSelectedItem) resulted in no
  108. ;state change.
  109. ;
  110. ;kSDPSelectedAnItem indicates that the user wants to select the currently-hilited
  111. ;record. This is returned, for example, when a user double-clicks on a record.
  112. ;
  113. ;kSDPChangedSelection implies that the user clicked on a new item (which may mean
  114. ;that no item is selected).
  115. ;
  116.  
  117. ;  Values of SDPPanelState 
  118.  
  119. kSDPProcessed                    EQU        0
  120. kSDPSelectedAnItem                EQU        1
  121. kSDPChangedSelection            EQU        2
  122. ; typedef unsigned short                 SDPPanelState
  123.  
  124. ;Your application may read any of the fields in a SDPPanelRecord, but it should
  125. ;use the appropriate routines to make changes to the records with the exception
  126. ;of the refCon field which your application may read or write at will.  Private
  127. ;information follows the SDPPanelRecord, so the handle must not be re-sized.
  128. ;
  129.  
  130. SDPPanelRecord            RECORD 0
  131. bounds                     ds        Rect            ; offset: $0 (0)
  132. visible                     ds.b    1                ; offset: $8 (8)
  133. enabled                     ds.b    1                ; offset: $9 (9)
  134. focused                     ds.b    1                ; offset: $A (10)
  135. padByte                     ds.b    1                ; offset: $B (11)
  136. identity                 ds.l    1                ; offset: $C (12)
  137. refCon                     ds.l    1                ; offset: $10 (16)
  138. listRect                 ds        Rect            ; offset: $14 (20)
  139. popupRect                 ds        Rect            ; offset: $1C (28)
  140. numberOfRows             ds.w    1                ; offset: $24 (36)
  141. rowHeight                 ds.w    1                ; offset: $26 (38)
  142. pabMode                     ds.b    1                ; offset: $28 (40)
  143. filler1                     ds.b    1                ; offset: $29 (41)
  144. sizeof                     EQU *                    ; size:   $2A (42)
  145.                         ENDR
  146. ; typedef struct SDPPanelRecord *        SDPPanelPtr
  147.  
  148. ; typedef SDPPanelPtr *                    SDPPanelHandle
  149.  
  150. ; typedef PanelBusyUPP                     PanelBusyProc
  151.  
  152. ;  Find Panel Structures 
  153.  
  154. kSDPItemIsSelectedBit            EQU        0
  155. kSDPFindTextExistsBit            EQU        1
  156. ;  Values of SDPFindPanelState 
  157.  
  158. kSDPItemIsSelectedMask            EQU        $01
  159. kSDPFindTextExistsMask            EQU        $02
  160. ; typedef unsigned short                 SDPFindPanelState
  161.  
  162. ;  Values of SDPFindPanelFocus 
  163.  
  164. kSDPFindPanelNoFocus            EQU        0
  165. kSDPFindPanelListHasFocus        EQU        1
  166. kSDPFindPanelTextHasFocus        EQU        2
  167. ; typedef unsigned short                 SDPFindPanelFocus
  168.  
  169.  
  170.  
  171. SDPFindPanelRecord        RECORD 0
  172. upperLeft                 ds        Point            ; offset: $0 (0)
  173. visible                     ds.b    1                ; offset: $4 (4)
  174. enabled                     ds.b    1                ; offset: $5 (5)
  175. nowFinding                 ds.b    1                ; offset: $6 (6)
  176. padByte                     ds.b    1                ; offset: $7 (7)
  177. currentFocus             ds.w    1                ; offset: $8 (8)
  178. identity                 ds.l    1                ; offset: $A (10)
  179. simultaneousSearchCount     ds.w    1                ; offset: $E (14)
  180. refCon                     ds.l    1                ; offset: $10 (16)
  181. sizeof                     EQU *                    ; size:   $14 (20)
  182.                         ENDR
  183. ; typedef struct SDPFindPanelRecord *    SDPFindPanelPtr
  184.  
  185. ; typedef SDPFindPanelPtr *                SDPFindPanelHandle
  186.  
  187. ;  Values of SDPFindPanelResult 
  188.  
  189. kSDPSelectedAFindItem            EQU        0
  190. kSDPFindSelectionChanged        EQU        1
  191. kSDPFindCompleted                EQU        2
  192. kSDPTextStateChanged            EQU        3
  193. kSDPFocusChanged                EQU        4
  194. kSDPSelectionAndFocusChanged    EQU        5
  195. kSDPMenuChanged                    EQU        6
  196. kSDPSelectionAndMenuChanged        EQU        7
  197. kSDPProcessedFind                EQU        8
  198. ; typedef unsigned short                 SDPFindPanelResult
  199.  
  200. ; typedef PackedPathNamePtr *            PackedRStringListHandle
  201.  
  202. ; typedef FindPanelBusyUPP                 FindPanelBusyProc
  203.  
  204. ;  Prompt For Identity Routines 
  205. ;
  206. ; pascal OSErr SDPPromptForID(AuthIdentity *id, ConstStr255Param guestPrompt, ConstStr255Param specificIDPrompt, ConstStr255Param localIDPrompt, const RString *recordType, SDPIdentityKind permittedKinds, SDPIdentityKind *selectedKind, const RecordID *loginFilter, SDPLoginFilterKind filterKind)
  207. ;
  208.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  209.         Macro
  210.         _SDPPromptForID
  211.             move.l              #$00100388,D0
  212.             dc.w                $AA5D
  213.         EndM
  214.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  215.         IMPORT_CFM_FUNCTION SDPPromptForID
  216.     ENDIF
  217.  
  218.  
  219.  
  220. ;SDPNewPanel creates a new panel. You supply the window in which the panel
  221. ;is to live, the bounds for the panel (which includes both the menu and the list),
  222. ;whether or not the panel is to be initially visible, the initial RLI (nil for
  223. ;catalogs and volumes), the types of records that will be shown (only a single
  224. ;(non-nil) type which may contain wildcards), the identity by which to browse
  225. ;(for access control reasons), and a refCon which is  available to the caller.
  226. ;
  227.  
  228. ;
  229. ; pascal OSErr SDPNewPanel(SDPPanelHandle *newPanel, WindowPtr window, const Rect *bounds, Boolean visible, Boolean enabled, const PackedRLI *initialRLI, const RStringPtr *typesList, unsigned long typeCount, AuthIdentity identity, DirEnumChoices enumFlags, DirMatchWith matchTypeHow, long refCon)
  230. ;
  231.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  232.         Macro
  233.         _SDPNewPanel
  234.             move.l              #$00150064,D0
  235.             dc.w                $AA5D
  236.         EndM
  237.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  238.         IMPORT_CFM_FUNCTION SDPNewPanel
  239.     ENDIF
  240.  
  241.  
  242. ;SDPSetIdentity Sets the identity used for browsing.  NOTE: This call is likely to go
  243. ;away if the new authentication scheme works.
  244. ;
  245.  
  246. ;
  247. ; pascal OSErr SDPSetIdentity(SDPPanelHandle panel, AuthIdentity identity)
  248. ;
  249.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  250.         Macro
  251.         _SDPSetIdentity
  252.             move.l              #$00040073,D0
  253.             dc.w                $AA5D
  254.         EndM
  255.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  256.         IMPORT_CFM_FUNCTION SDPSetIdentity
  257.     ENDIF
  258.  
  259.  
  260.  
  261.  
  262. ;SDPGetNewPanel is similar to SDPNewPanel above, except it takes a resource id of a
  263. ;'panl' resource.
  264. ;
  265.  
  266. ;
  267. ; pascal OSErr SDPGetNewPanel(SDPPanelHandle *newPanel, short resourceID, WindowPtr window, const PackedRLI *initialRLI, AuthIdentity identity)
  268. ;
  269.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  270.         Macro
  271.         _SDPGetNewPanel
  272.             move.l              #$00090065,D0
  273.             dc.w                $AA5D
  274.         EndM
  275.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  276.         IMPORT_CFM_FUNCTION SDPGetNewPanel
  277.     ENDIF
  278.  
  279.  
  280. ;Call this when you're completely done with a panel. It deallocates all of the
  281. ;associated data structures.
  282. ;
  283.  
  284. ;
  285. ; pascal OSErr SDPDisposePanel(SDPPanelHandle panel)
  286. ;
  287.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  288.         Macro
  289.         _SDPDisposePanel
  290.             move.l              #$00020066,D0
  291.             dc.w                $AA5D
  292.         EndM
  293.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  294.         IMPORT_CFM_FUNCTION SDPDisposePanel
  295.     ENDIF
  296.  
  297.  
  298. ;If the panel is visible, it makes it invisible by hiding the menu, turning off
  299. ;drawing of the list, and erasing and  invaling the list's rectangle.
  300. ;
  301.  
  302. ;
  303. ; pascal OSErr SDPHidePanel(SDPPanelHandle panel)
  304. ;
  305.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  306.         Macro
  307.         _SDPHidePanel
  308.             move.l              #$00020067,D0
  309.             dc.w                $AA5D
  310.         EndM
  311.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  312.         IMPORT_CFM_FUNCTION SDPHidePanel
  313.     ENDIF
  314.  
  315.  
  316. ;  If the panel is invisible, it makes it visible and draws it. 
  317. ;
  318. ; pascal OSErr SDPShowPanel(SDPPanelHandle panel)
  319. ;
  320.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  321.         Macro
  322.         _SDPShowPanel
  323.             move.l              #$00020068,D0
  324.             dc.w                $AA5D
  325.         EndM
  326.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  327.         IMPORT_CFM_FUNCTION SDPShowPanel
  328.     ENDIF
  329.  
  330.  
  331. ;  Disables the list and menu so that it won't accept any commands. 
  332. ;
  333. ; pascal OSErr SDPEnablePanel(SDPPanelHandle panel, Boolean enable)
  334. ;
  335.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  336.         Macro
  337.         _SDPEnablePanel
  338.             move.l              #$00030069,D0
  339.             dc.w                $AA5D
  340.         EndM
  341.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  342.         IMPORT_CFM_FUNCTION SDPEnablePanel
  343.     ENDIF
  344.  
  345. ;Move the upper-left-hand corner of the panel to (h,v), given in local coordinates of
  346. ;the panel's window.
  347. ;
  348.  
  349. ;
  350. ; pascal OSErr SDPMovePanel(SDPPanelHandle panel, short h, short v)
  351. ;
  352.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  353.         Macro
  354.         _SDPMovePanel
  355.             move.l              #$0004006B,D0
  356.             dc.w                $AA5D
  357.         EndM
  358.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  359.         IMPORT_CFM_FUNCTION SDPMovePanel
  360.     ENDIF
  361.  
  362.  
  363. ;Resizes the panel to have the given width and height (keeping the upper-left-hand
  364. ;corner in a fixed position).
  365. ;
  366.  
  367. ;
  368. ; pascal OSErr SDPSizePanel(SDPPanelHandle panel, short width, short height)
  369. ;
  370.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  371.         Macro
  372.         _SDPSizePanel
  373.             move.l              #$0004006C,D0
  374.             dc.w                $AA5D
  375.         EndM
  376.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  377.         IMPORT_CFM_FUNCTION SDPSizePanel
  378.     ENDIF
  379.  
  380.  
  381. ;This routine simulates a double-click on the selected item (if there is no selected
  382. ;item, then it does nothing), and it returns the result of that "double-click" via the
  383. ;whatHappened parameter. If a container is selected, then that container will be
  384. ;opened and kMovedDownTheHierarchy is returned. If, however, the user is at the lowest
  385. ;level in the hierarchy, then kSDPSelectedAnItem is returned.
  386. ;
  387.  
  388. ;
  389. ; pascal OSErr SDPOpenSelectedItem(SDPPanelHandle panel, SDPPanelState *whatHappened)
  390. ;
  391.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  392.         Macro
  393.         _SDPOpenSelectedItem
  394.             move.l              #$0004006D,D0
  395.             dc.w                $AA5D
  396.         EndM
  397.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  398.         IMPORT_CFM_FUNCTION SDPOpenSelectedItem
  399.     ENDIF
  400.  
  401.  
  402. ;Returns whether a record is selected, something else is selected, or nothing is
  403. ;selected.
  404. ;
  405.  
  406. ;
  407. ; pascal OSErr SDPGetPanelSelectionState(SDPPanelHandle panel, SDPSelectionState *itsState)
  408. ;
  409.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  410.         Macro
  411.         _SDPGetPanelSelectionState
  412.             move.l              #$0004006E,D0
  413.             dc.w                $AA5D
  414.         EndM
  415.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  416.         IMPORT_CFM_FUNCTION SDPGetPanelSelectionState
  417.     ENDIF
  418.  
  419.  
  420. ;Returns the size of the currently-selected DSSpec, or zero if a record is
  421. ;not selected.  It is safe to do a NewPtr (SDPGetPanelSelectionSize (...))
  422. ;
  423.  
  424. ;
  425. ; pascal OSErr SDPGetPanelSelectionSize(SDPPanelHandle panel, unsigned short *dsSpecSize)
  426. ;
  427.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  428.         Macro
  429.         _SDPGetPanelSelectionSize
  430.             move.l              #$00040072,D0
  431.             dc.w                $AA5D
  432.         EndM
  433.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  434.         IMPORT_CFM_FUNCTION SDPGetPanelSelectionSize
  435.     ENDIF
  436.  
  437.  
  438. ;Returns the currently-selected DSSpec, or a zero-lengthed
  439. ;DSSpec if a record is not selected. It is assumed that the selection
  440. ;buffer allocated is large enough.
  441. ;
  442.  
  443. ;
  444. ; pascal OSErr SDPGetPanelSelection(SDPPanelHandle panel, PackedDSSpec *selection)
  445. ;
  446.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  447.         Macro
  448.         _SDPGetPanelSelection
  449.             move.l              #$0004006F,D0
  450.             dc.w                $AA5D
  451.         EndM
  452.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  453.         IMPORT_CFM_FUNCTION SDPGetPanelSelection
  454.     ENDIF
  455.  
  456.  
  457. ;Forces browsing to the specified RLI. If prli is the current RLI, then it does
  458. ;nothing.
  459. ;
  460.  
  461. ;
  462. ; pascal OSErr SDPSetPath(SDPPanelHandle panel, const PackedRLI *prli)
  463. ;
  464.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  465.         Macro
  466.         _SDPSetPath
  467.             move.l              #$00040070,D0
  468.             dc.w                $AA5D
  469.         EndM
  470.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  471.         IMPORT_CFM_FUNCTION SDPSetPath
  472.     ENDIF
  473.  
  474.  
  475. ;This is the main driver for the panel.  You should pass all events to SDPPanelEvent
  476. ;including NULL events.  If you have more than 1 panel, you will need to
  477. ;call SDPPanelEvent for each panel.  NOTE:  For Update Events you will also need to call
  478. ;SDPUpdatePanel as described below.
  479. ;
  480.  
  481. ;
  482. ; pascal OSErr SDPPanelEvent(SDPPanelHandle panel, const EventRecord *theEvent, SDPPanelState *whatHappened)
  483. ;
  484.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  485.         Macro
  486.         _SDPPanelEvent
  487.             move.l              #$00060071,D0
  488.             dc.w                $AA5D
  489.         EndM
  490.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  491.         IMPORT_CFM_FUNCTION SDPPanelEvent
  492.     ENDIF
  493.  
  494.  
  495.  
  496. ;SDPUpdatePanel should be called in response to an update event.  Generally you will
  497. ;have first called BeginUpdate, and pass the windows visRgn as theRgn.  If NULL
  498. ;is passed for theRgn the entire panel is re-drawn.  NOTE:  Drawing is not cliped to
  499. ;theRgn, if this is desired, you must first call SetClip.
  500. ;
  501.  
  502. ;
  503. ; pascal OSErr SDPUpdatePanel(SDPPanelHandle panel, RgnHandle theRgn)
  504. ;
  505.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  506.         Macro
  507.         _SDPUpdatePanel
  508.             move.l              #$0004006A,D0
  509.             dc.w                $AA5D
  510.         EndM
  511.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  512.         IMPORT_CFM_FUNCTION SDPUpdatePanel
  513.     ENDIF
  514.  
  515.  
  516. ;SDPSelectString scrolls and selects the closest matching string at the current
  517. ;level.  This is the same behavior as if the user typed in the given string.
  518. ;
  519.  
  520. ;
  521. ; pascal OSErr SDPSelectString(SDPPanelHandle panel, const RString *name)
  522. ;
  523.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  524.         Macro
  525.         _SDPSelectString
  526.             move.l              #$00040074,D0
  527.             dc.w                $AA5D
  528.         EndM
  529.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  530.         IMPORT_CFM_FUNCTION SDPSelectString
  531.     ENDIF
  532.  
  533. ;SDPGetPathLength returns the length in bytes required to hold the current path name
  534. ;in RLI format.  This corresponds to the path name in the popup menu.
  535. ;
  536.  
  537. ;
  538. ; pascal OSErr SDPGetPathLength(SDPPanelHandle panel, unsigned short *pathNameLength)
  539. ;
  540.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  541.         Macro
  542.         _SDPGetPathLength
  543.             move.l              #$00040075,D0
  544.             dc.w                $AA5D
  545.         EndM
  546.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  547.         IMPORT_CFM_FUNCTION SDPGetPathLength
  548.     ENDIF
  549.  
  550. ;  SDPGetPath returns the current rli. 
  551. ;
  552. ; pascal OSErr SDPGetPath(SDPPanelHandle panel, PackedRLI *prli, short *dsRefNum)
  553. ;
  554.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  555.         Macro
  556.         _SDPGetPath
  557.             move.l              #$00060076,D0
  558.             dc.w                $AA5D
  559.         EndM
  560.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  561.         IMPORT_CFM_FUNCTION SDPGetPath
  562.     ENDIF
  563.  
  564. ;SDPSetFocus will draw the focus rectangle or erase the focus rectangle depending upon
  565. ;the focus boolean.
  566. ;
  567.  
  568. ;
  569. ; pascal OSErr SDPSetFocus(SDPPanelHandle panel, Boolean focus)
  570. ;
  571.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  572.         Macro
  573.         _SDPSetFocus
  574.             move.l              #$00030077,D0
  575.             dc.w                $AA5D
  576.         EndM
  577.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  578.         IMPORT_CFM_FUNCTION SDPSetFocus
  579.     ENDIF
  580.  
  581. ;SDPSetPanelBalloonHelp allows clients to specify a STR# resource id to use for 
  582. ;balloon help.  Balloon help is unavailable until this call is made.
  583. ;
  584.  
  585. ;
  586. ; pascal OSErr SDPSetPanelBalloonHelp(SDPPanelHandle panel, short balloonHelpID)
  587. ;
  588.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  589.         Macro
  590.         _SDPSetPanelBalloonHelp
  591.             move.l              #$00030078,D0
  592.             dc.w                $AA5D
  593.         EndM
  594.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  595.         IMPORT_CFM_FUNCTION SDPSetPanelBalloonHelp
  596.     ENDIF
  597.  
  598. ;SDPInstallPanelBusyProc allows clients to install a CB that will be called while
  599. ;the panel is aynchronously busy.
  600. ;
  601.  
  602. ;
  603. ; pascal OSErr SDPInstallPanelBusyProc(SDPPanelHandle panel, PanelBusyProc busyProc)
  604. ;
  605.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  606.         Macro
  607.         _SDPInstallPanelBusyProc
  608.             move.l              #$00040079,D0
  609.             dc.w                $AA5D
  610.         EndM
  611.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  612.         IMPORT_CFM_FUNCTION SDPInstallPanelBusyProc
  613.     ENDIF
  614.  
  615.  
  616. ;
  617. ; pascal OSErr SDPNewFindPanel(SDPFindPanelHandle *newPanel, WindowPtr window, Point upperLeft, short layoutResourceID, Boolean visible, Boolean enabled, const RStringPtr *typesList, long typeCount, DirMatchWith matchTypeHow, AuthIdentity identity, short simultaneousSearchCount, SDPFindPanelFocus initialFocus, long refCon)
  618. ;
  619.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  620.         Macro
  621.         _SDPNewFindPanel
  622.             move.l              #$001408FC,D0
  623.             dc.w                $AA5D
  624.         EndM
  625.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  626.         IMPORT_CFM_FUNCTION SDPNewFindPanel
  627.     ENDIF
  628.  
  629. ;
  630. ; pascal OSErr SDPDisposeFindPanel(SDPFindPanelHandle findPanel)
  631. ;
  632.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  633.         Macro
  634.         _SDPDisposeFindPanel
  635.             move.l              #$000208FD,D0
  636.             dc.w                $AA5D
  637.         EndM
  638.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  639.         IMPORT_CFM_FUNCTION SDPDisposeFindPanel
  640.     ENDIF
  641.  
  642. ;
  643. ; pascal OSErr SDPStartFind(SDPFindPanelHandle findPanel)
  644. ;
  645.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  646.         Macro
  647.         _SDPStartFind
  648.             move.l              #$000208FE,D0
  649.             dc.w                $AA5D
  650.         EndM
  651.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  652.         IMPORT_CFM_FUNCTION SDPStartFind
  653.     ENDIF
  654.  
  655. ;
  656. ; pascal OSErr SDPStopFind(SDPFindPanelHandle findPanel)
  657. ;
  658.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  659.         Macro
  660.         _SDPStopFind
  661.             move.l              #$000208FF,D0
  662.             dc.w                $AA5D
  663.         EndM
  664.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  665.         IMPORT_CFM_FUNCTION SDPStopFind
  666.     ENDIF
  667.  
  668. ;
  669. ; pascal OSErr SDPFindPanelEvent(SDPFindPanelHandle findPanel, const EventRecord *event, SDPFindPanelResult *whatHappened)
  670. ;
  671.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  672.         Macro
  673.         _SDPFindPanelEvent
  674.             move.l              #$00060900,D0
  675.             dc.w                $AA5D
  676.         EndM
  677.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  678.         IMPORT_CFM_FUNCTION SDPFindPanelEvent
  679.     ENDIF
  680.  
  681. ;
  682. ; pascal OSErr SDPUpdateFindPanel(SDPFindPanelHandle findPanel, RgnHandle theRgn)
  683. ;
  684.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  685.         Macro
  686.         _SDPUpdateFindPanel
  687.             move.l              #$00040901,D0
  688.             dc.w                $AA5D
  689.         EndM
  690.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  691.         IMPORT_CFM_FUNCTION SDPUpdateFindPanel
  692.     ENDIF
  693.  
  694. ;
  695. ; pascal OSErr SDPShowFindPanel(SDPFindPanelHandle findPanel)
  696. ;
  697.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  698.         Macro
  699.         _SDPShowFindPanel
  700.             move.l              #$00020902,D0
  701.             dc.w                $AA5D
  702.         EndM
  703.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  704.         IMPORT_CFM_FUNCTION SDPShowFindPanel
  705.     ENDIF
  706.  
  707. ;
  708. ; pascal OSErr SDPHideFindPanel(SDPFindPanelHandle findPanel)
  709. ;
  710.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  711.         Macro
  712.         _SDPHideFindPanel
  713.             move.l              #$00020903,D0
  714.             dc.w                $AA5D
  715.         EndM
  716.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  717.         IMPORT_CFM_FUNCTION SDPHideFindPanel
  718.     ENDIF
  719.  
  720. ;
  721. ; pascal OSErr SDPMoveFindPanel(SDPFindPanelHandle findPanel, short h, short v)
  722. ;
  723.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  724.         Macro
  725.         _SDPMoveFindPanel
  726.             move.l              #$00040904,D0
  727.             dc.w                $AA5D
  728.         EndM
  729.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  730.         IMPORT_CFM_FUNCTION SDPMoveFindPanel
  731.     ENDIF
  732.  
  733. ;
  734. ; pascal OSErr SDPEnableFindPanel(SDPFindPanelHandle findPanel, Boolean enabled)
  735. ;
  736.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  737.         Macro
  738.         _SDPEnableFindPanel
  739.             move.l              #$00030905,D0
  740.             dc.w                $AA5D
  741.         EndM
  742.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  743.         IMPORT_CFM_FUNCTION SDPEnableFindPanel
  744.     ENDIF
  745.  
  746. ;
  747. ; pascal OSErr SDPSetFindPanelFocus(SDPFindPanelHandle findPanel, SDPFindPanelFocus newFocus)
  748. ;
  749.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  750.         Macro
  751.         _SDPSetFindPanelFocus
  752.             move.l              #$00030906,D0
  753.             dc.w                $AA5D
  754.         EndM
  755.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  756.         IMPORT_CFM_FUNCTION SDPSetFindPanelFocus
  757.     ENDIF
  758.  
  759. ;
  760. ; pascal OSErr SDPGetFindPanelState(SDPFindPanelHandle findPanel, SDPFindPanelState *itsState)
  761. ;
  762.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  763.         Macro
  764.         _SDPGetFindPanelState
  765.             move.l              #$00040907,D0
  766.             dc.w                $AA5D
  767.         EndM
  768.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  769.         IMPORT_CFM_FUNCTION SDPGetFindPanelState
  770.     ENDIF
  771.  
  772. ;
  773. ; pascal OSErr SDPGetFindPanelSelectionSize(SDPFindPanelHandle findPanel, unsigned short *size)
  774. ;
  775.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  776.         Macro
  777.         _SDPGetFindPanelSelectionSize
  778.             move.l              #$00040908,D0
  779.             dc.w                $AA5D
  780.         EndM
  781.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  782.         IMPORT_CFM_FUNCTION SDPGetFindPanelSelectionSize
  783.     ENDIF
  784.  
  785. ;
  786. ; pascal OSErr SDPGetFindPanelSelection(SDPFindPanelHandle findPanel, PackedDSSpec *selection)
  787. ;
  788.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  789.         Macro
  790.         _SDPGetFindPanelSelection
  791.             move.l              #$00040909,D0
  792.             dc.w                $AA5D
  793.         EndM
  794.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  795.         IMPORT_CFM_FUNCTION SDPGetFindPanelSelection
  796.     ENDIF
  797.  
  798. ;
  799. ; pascal OSErr SDPSetFindPanelBalloonHelp(SDPFindPanelHandle findPanel, short balloonHelpID)
  800. ;
  801.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  802.         Macro
  803.         _SDPSetFindPanelBalloonHelp
  804.             move.l              #$0003090A,D0
  805.             dc.w                $AA5D
  806.         EndM
  807.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  808.         IMPORT_CFM_FUNCTION SDPSetFindPanelBalloonHelp
  809.     ENDIF
  810.  
  811. ;
  812. ; pascal OSErr SDPSetFindIdentity(SDPFindPanelHandle findPanel, AuthIdentity identity)
  813. ;
  814.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  815.         Macro
  816.         _SDPSetFindIdentity
  817.             move.l              #$0004090B,D0
  818.             dc.w                $AA5D
  819.         EndM
  820.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  821.         IMPORT_CFM_FUNCTION SDPSetFindIdentity
  822.     ENDIF
  823.  
  824. ;
  825. ; pascal OSErr SDPInstallFindPanelBusyProc(SDPFindPanelHandle findPanel, FindPanelBusyProc busyProc)
  826. ;
  827.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  828.         Macro
  829.         _SDPInstallFindPanelBusyProc
  830.             move.l              #$0004090C,D0
  831.             dc.w                $AA5D
  832.         EndM
  833.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  834.         IMPORT_CFM_FUNCTION SDPInstallFindPanelBusyProc
  835.     ENDIF
  836.  
  837.  
  838.  
  839. ;
  840. ; pascal OSErr SDPGetIconByType(const RString *recordType, IconSelectorValue whichIcons, Handle *iconSuite)
  841. ;
  842.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  843.         Macro
  844.         _SDPGetIconByType
  845.             move.w              #$0400,D0
  846.             dc.w                $AA5C
  847.         EndM
  848.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  849.         IMPORT_CFM_FUNCTION SDPGetIconByType
  850.     ENDIF
  851.  
  852. ;
  853. ; pascal OSErr SDPGetDSSpecIcon(const PackedDSSpec *packedDSSpec, IconSelectorValue whichIcons, Handle *iconSuite)
  854. ;
  855.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  856.         Macro
  857.         _SDPGetDSSpecIcon
  858.             move.w              #$0401,D0
  859.             dc.w                $AA5C
  860.         EndM
  861.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  862.         IMPORT_CFM_FUNCTION SDPGetDSSpecIcon
  863.     ENDIF
  864.  
  865. ;
  866. ; pascal OSErr SDPGetCategories(PackedRStringListHandle *categories, PackedRStringListHandle *displayNames)
  867. ;
  868.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  869.         Macro
  870.         _SDPGetCategories
  871.             move.w              #$0402,D0
  872.             dc.w                $AA5C
  873.         EndM
  874.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  875.         IMPORT_CFM_FUNCTION SDPGetCategories
  876.     ENDIF
  877.  
  878. ;
  879. ; pascal OSErr SDPGetCategoryTypes(const RString *category, PackedRStringListHandle *types)
  880. ;
  881.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  882.         Macro
  883.         _SDPGetCategoryTypes
  884.             move.w              #$0403,D0
  885.             dc.w                $AA5C
  886.         EndM
  887.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  888.         IMPORT_CFM_FUNCTION SDPGetCategoryTypes
  889.     ENDIF
  890.  
  891.  
  892.  
  893.  
  894. ;
  895. ; pascal OSErr SDPResolveAliasFile(FSSpecPtr fileSpec, PackedDSSpecHandle resolvedDSSpec, AuthIdentity identity, Boolean mayPromptUser)
  896. ;
  897.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  898.         Macro
  899.         _SDPResolveAliasFile
  900.             move.l              #$00070E74,D0
  901.             dc.w                $AA5D
  902.         EndM
  903.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  904.         IMPORT_CFM_FUNCTION SDPResolveAliasFile
  905.     ENDIF
  906.  
  907. ;
  908. ; pascal OSErr SDPResolveAliasDSSpec(PackedDSSpecHandle theAliasDSSpec, AuthIdentity identity, Boolean mayPromptUser)
  909. ;
  910.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  911.         Macro
  912.         _SDPResolveAliasDSSpec
  913.             move.l              #$00050E75,D0
  914.             dc.w                $AA5D
  915.         EndM
  916.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  917.         IMPORT_CFM_FUNCTION SDPResolveAliasDSSpec
  918.     ENDIF
  919.  
  920. ;
  921. ; pascal OSErr SDPRepairPersonalDirectory(FSSpec *pd, Boolean showProgress)
  922. ;
  923.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  924.         Macro
  925.         _SDPRepairPersonalDirectory
  926.             move.l              #$00031A2C,D0
  927.             dc.w                $AA5D
  928.         EndM
  929.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  930.         IMPORT_CFM_FUNCTION SDPRepairPersonalDirectory
  931.     ENDIF
  932.  
  933.  
  934.     ENDIF ; __OCESTANDARDDIRECTORY__ 
  935.  
  936.